草庐IT

JavaScript ES6 模块 + traceur

全部标签

javascript - proxyquire 如何处理代理模块的二级(间接)需求?

如果我们有三个模块名称A、B和C,那么模块A需要B和B需要C:这个调用会产生什么效果?varA=proxyquire('A',{'C':mockedModule})模块B会得到mock还是真正的C模块? 最佳答案 只会模拟直接依赖。但是您可以嵌套proxyquire语句,因此在您的示例中您可以:constA=proxyquire('../A',{'./B':proxyquire('../B',{'C':mockC})});文件结构是这样的root|--A.js|--B.js`--tests`--A.spec.js并且importC不

使用小度音箱+Blinker控制ESP01S Relay继电器模块

一.使用ESP01S模块,PIN脚定义如下:管脚功能如下:ESP01S模块原理图:ESP01S模块比ESP01模块做了以下优化:LED灯的管脚发生变化,由ESP01的TXD0变成ESP01s的GPIO2引脚;ESP01s模块的IO0、RST、EN引脚上加了上拉电阻,也就是说在连接了3v3引脚后这三个引脚也自动连接上高电平,无需再EN引脚上外接高电平。ESP01模块外接引脚图:ESP01S模块外接引脚图:二.继电器模块选择:使用以下所示隔离款继电器模块原理图如下:模块使用GPIO0驱动继电器,但是ESP01S模块在上电时GPIO0会不受控制翻转,网上很多建议加电容但是效果不是很好,这里直接使用R

javascript - 模拟在同一模块中导出和调用的模块函数?

单元测试和spy、stub和模拟的概念的新手。我想从下面的代码中测试password.js中的verify方法,但是我无法stubhash测试文件中的函数。因为verify使用了hash函数并且导出了hash函数,所以我应该stubhash函数返回固定响应而不是实际调用的hash。因为我不想测试hash函数。问题:在测试verify时没有调用为hash函数创建的stub。附带问题1:我应该专注于测试函数本身的逻辑而不是其他被调用函数的逻辑吗?主要问题:(已回答)如何stub在同一模块中调用的模块函数?附带问题2:如果hash未导出但仅保留在模块中,我将如何stub?代码密码.js/**

javascript - es6 模块如何导入自身?

我有一个名为fooModule的模块。在这个模块中,我导入了fooModule(本身):import*asfooModulefrom'./fooModule';exportfunctionlogFoo(){console.log(fooModule)}调用logFoo()时,我可以看到fooModule的所有导出。这是如何运作的? 最佳答案 循环依赖对于声明式导入/导出没有问题。在你的情况下,圆圈的长度是最小的:-)解决方案是import不会将值导入变量,而是使变量成为导出变量的引用。看看here一个可变变量的例子,在thisque

javascript - 导入节点模块时出现流错误 "cant resolve module"

我最近将此添加到我的流程配置中,因为大量与流程拾取的节点模块相关的错误[ignore].*/node_modules/.*这解决了那些错误,但引入了新错误。现在,我导入的每个模块都会导致错误,其中流程表示它无法解决它,因此让我认为这是由于我添加的忽略规则造成的。有没有办法解决这个问题,因为这里删除这一行只会引入不同类型的错误,保留它仍然会出错。 最佳答案 现在有点晚了,但对于以后遇到这个问题的任何人来说:你不应该忽略你的node_modules文件夹。Flow应该从该文件夹中读取并分析其中的文件。

javascript - 模块 ' ' 导入了意外值 ' '。请添加@NgModule 注解

我正在做这个教程:https://youtu.be/qs2n_poLarc?list=WL并且正在尝试学习ionic框架。问题是教程(根据我阅读的内容)有点过时了。视频的作者使用了import{HttpModule}from"@angular/http,但我在StackOverflow上读到我应该使用import{HttpClient}from"@angular/common/http";。问题是当我尝试编译代码时出现此错误:模块“AppModule”导入的意外值“HttpClient”。请添加@NgModule注释。。现在我不知道应该在哪里添加它,因为我的app.module.ts看

javascript - 从 block webpack 4 中排除某些模块

我如何指定我不希望webpack4block中的模块,假设我不希望vendor文件中有lodash(无论后果如何),我该怎么办?这是实际配置:splitChunks:{name:'vendors',maxAsyncRequests:1,maxInitialRequests:2,chunks:'initial',} 最佳答案 test也可以采用方法。这允许很大的灵active。例如..vendor:{test(mod/*,chunk*/){//Onlynode_modulesareneededif(!mod.context.inclu

Javascript 模块模式和 new 关键字

我了解了模块模式的基础知识以及它使用闭包来允许私有(private)成员,但我无法完全理解为什么下面的代码会执行它的操作:varCalculator=function(){varpriv=0;return{changePriv:function(){priv++;},printPriv:function(){console.log(priv);}}}varmyCalc=Calculator();myCalc.printPriv();myCalc.changePriv();myCalc.printPriv();varmyOtherCalc=Calculator();myCalc.prin

javascript - 我们可以从 requirejs 中的模块导出多个非 AMD 函数吗?

如果我有一个名为old.js的非AMD模块,并且在这个脚本中我定义了两个函数f1和f2。我需要使用它们,如何导出两者?require.config({paths:{"jquery":"https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min",},shim:{"old":{deps:["jquery"],exports:["f1","f2"]}},urlArgs:"bust="+(newDate()).getTime()});这行不通。我会得到split错误。该文档没有提到多个(http://requirejs.org/

javascript - 模块构建失败 - Webpack、React、Babel

我正在观看pluralsight的视频教程。类(class)名称是“使用React、Flux、Webpack和Firebase构建实时应用程序”。请参阅下面的代码和所附问题的屏幕截图。每当我尝试重新构建文件时,Webpack都会失败。有人可以告知该问题可能是什么。我目前正在使用所有最新的库。/*webpack.config.js*/module.exports={entry:{main:['./src/main.js']},output:{filename:'./public/[name].js'},module:{loaders:[{test:/\.jsx?$/,exclude:/n